package com.hsnn.medstgmini.subscribe.service.impl;

import java.util.Date;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.hsnn.medstgmini.subscribe.dao.BidSubscribeDetailDao;
import com.hsnn.medstgmini.subscribe.model.BidSubscribeDetail;
import com.hsnn.medstgmini.subscribe.service.BidSubscribeDetailManager;
import com.hsnn.medstgmini.util.Pagination;

@Service
public class BidSubscribeDetailManagerImpl implements BidSubscribeDetailManager{
	
	@Autowired
	private BidSubscribeDetailDao bidSubscribeDetailDao;
	/**
	 * @category 预约详情信息保存
	 * @author 韩守松
	 * @date   2015年8月28日
	 * @param  @param bidSubscribeDetail
	 */
	@Transactional
   public void save(BidSubscribeDetail bidSubscribeDetail) {
	    bidSubscribeDetailDao.save(bidSubscribeDetail);
	}
	

	/**
	 * @category 生产企业预约信息保存
	 * @author 韩守松
	 * @date   2015年9月2日
	 * @param
	 */
	@Transactional
	public void proSubscribeSave(BidSubscribeDetail bidSubscribeDetail) {
		bidSubscribeDetailDao.proSubscribeSave(bidSubscribeDetail);
	}
	/**
	 * @category 查询预约详情信息
	 * @author 韩守松
	 * @date   2015年8月28日
	 * @param  @param page
	 * @param  @param bidSubscribeDetail
	 * @param  @return
	 */
	public Pagination getDetailList(Pagination page,BidSubscribeDetail bidSubscribeDetail) {
		return bidSubscribeDetailDao.getDetailList(page, bidSubscribeDetail);
	}
	
	/**
	 * @category 根据预约的id 获取预约详情信息 
	 * @author 韩守松
	 * @date   2015年9月1日
	 * @param  @param bidSubscribeId
	 * @param  @return
	 */
	public List<BidSubscribeDetail> getBidSubscribeDetailList(String bidSubscribeId) {
		return bidSubscribeDetailDao.getBidSubscribeDetailList(bidSubscribeId);
	}
	
	/**
	 * @category 更新生产企业预约日期
	 * @author 韩守松
	 * @date   2015年9月2日
	 * @param  @param bidSubscribeDetail
	 */
	@Transactional
	public void update(BidSubscribeDetail bidSubscribeDetail) {
		bidSubscribeDetailDao.update(bidSubscribeDetail);
	}
	
	/**
	 * @category 根据预约详情id 获取预约详情信息
	 * @author 韩守松
	 * @date   2015年9月2日
	 * @param  @param bidSubscribeDetailId
	 * @param  @return
	 */
	public List<BidSubscribeDetail> getDetailListByDetailId(String bidSubscribeDetailId) {
		return bidSubscribeDetailDao.getDetailListByDetailId(bidSubscribeDetailId);
	}
	
	/**
	 * @category 获取预约时日期列表
	 * @author 韩守松
	 * @date   2015年9月6日
	 * @param  @return
	 */
	public List<BidSubscribeDetail> getSubscribeDateList(String bidSubscribeId) {
		return bidSubscribeDetailDao.getSubscribeDateList(bidSubscribeId);
	}
	
	/**
	 * @category 获取预约时间列表
	 * @author 韩守松
	 * @date   2015年9月6日
	 * @param  @param bidSubscribeDetail
	 * @param  @return
	 */
	public List<BidSubscribeDetail> getSubscribeTimeList(BidSubscribeDetail bidSubscribeDetail) {
		return bidSubscribeDetailDao.getSubscribeTimeList(bidSubscribeDetail);
	}
	
	/**
	 * @category 根据 设置id 预约日期 预约时间段确定详情id
	 * @author 韩守松
	 * @date   2015年9月7日
	 * @param  @param bidSubscribeDetail
	 * @param  @return
	 */
    public String getRecordDetailId(BidSubscribeDetail bidSubscribeDetail) {
		return bidSubscribeDetailDao.getRecordDetailId(bidSubscribeDetail);
	}
    /**
     * @category 根据预约日期获取预约时间
     * @author 韩守松
     * @date   2015年9月21日
     * @param  @param dateStr
     * @param  @param bidSubscribeId
     * @param  @return
     */
    public List<BidSubscribeDetail>  getSubscribeTimeByDate(Date dateStr,String bidSubscribeId){
    	return bidSubscribeDetailDao.getSubscribeTimeByDate(dateStr, bidSubscribeId);
    }
}
